《高性能網(wǎng)站建設(shè)指南》閱讀筆記_規(guī)則10- 精簡(jiǎn)javascript
發(fā)布時(shí)間:2013-11-22 瀏覽:268打印字號(hào):大中小
作用:精簡(jiǎn)JavaScript可以顯著減少Js文件的大小,減少下載時(shí)間。
首先我們區(qū)分一下精簡(jiǎn)和混淆,精簡(jiǎn)只是去掉代碼中空白和注釋以減小其大小。而混淆會(huì)對(duì)一些變量函數(shù)名進(jìn)行修改。一般混淆是為了增加反向工程的難度,但是也容易帶來(lái)錯(cuò)誤,一般我們不建議去混淆JavaScript代碼。精簡(jiǎn)和混淆我們都可以借助一些工具來(lái)實(shí)現(xiàn)。
精簡(jiǎn)JavaScript代碼書(shū)中推薦的工具是:JSMin軟件,我們使用的AjaxMin也具有同樣的效果。
前面我們說(shuō)過(guò)對(duì)一個(gè)網(wǎng)頁(yè)進(jìn)行g(shù)zip壓縮產(chǎn)生的影響,但精簡(jiǎn)代碼能進(jìn)一步減小文件。而且壓縮和精簡(jiǎn)配合的效果,同壓縮同混淆配合的效果差別不大,所以壓縮和精簡(jiǎn)的配合就成為了減小js文件的優(yōu)質(zhì)組合。
對(duì)于CSS,精簡(jiǎn)CSS的潛在節(jié)省來(lái)自:合并相同的類、移除不使用的類等。但是由于css存在順序依賴的本質(zhì),所以精簡(jiǎn)css是一個(gè)復(fù)雜的問(wèn)題。而且目前還沒(méi)有合適的工具。所以優(yōu)質(zhì)的解決方案還是移除注釋和空白,并進(jìn)行一些直觀的優(yōu)化。如:縮寫(xiě)(用"#606"代替"#660066"),移除不必要的字符串(用"0"代替"0px")。


